Системы управления веб-контентом

Установка и базовая настройка CMS

Системы управления веб-контентом

План лекции

Основные вопросы

  • Требования к серверному окружению
  • Процесс установки WordPress
  • Обзор административной панели
  • Первоначальная настройка сайта

Цели лекции

  • Научиться устанавливать CMS на хостинг
  • Понять структуру административной панели
  • Освоить базовые настройки WordPress
  • Настроить ЧПУ и основные параметры
Системы управления веб-контентом

Требования к серверному окружению

Хостинг-провайдеры

  • Shared-хостинг — дёшево, для начинающих
  • VPS/VDS — больше контроля, сложнее
  • Облачный хостинг — масштабируемость
  • Локальный сервер — для разработки (XAMPP, MAMP)

Что нужно для WordPress

  • PHP 8.1 или выше (рекомендуется 8.2/8.3)
  • MySQL 8.0+ или MariaDB 10.6+
  • HTTPS поддержка (SSL-сертификат)
  • Mod_rewrite для Apache
  • 100-200 МБ дискового пространства минимум
Системы управления веб-контентом

Доменное имя и DNS

Выбор домена

  • Зона — .com, .ru, .by и др.
  • Имя — краткое, запоминающееся
  • Проверка — whois-сервисы
  • Регистрация — у аккредитованных регистраторов

DNS-настройки

  • A-запись — IP-адрес хостинга
  • CNAME — для поддоменов
  • MX-записи — для почты
  • TTL — время обновления (1-24 часа)
Системы управления веб-контентом

Стек технологий WordPress

┌─────────────────────────────────────┐
│         Браузер клиента             │
└────────────────┬────────────────────┘
                 │ HTTP/HTTPS
┌────────────────▼────────────────────┐
│        Веб-сервер (Apache/Nginx)    │
└────────────────┬────────────────────┘
                 │
┌────────────────▼────────────────────┐
│           PHP-интерпретатор         │
│         (версия 8.1 - 8.3)          │
└────────────────┬────────────────────┘
                 │
┌────────────────▼────────────────────┐
│    База данных (MySQL/MariaDB)      │
│         wp_posts, wp_options        │
└─────────────────────────────────────┘
Системы управления веб-контентом

Подготовка к установке

Шаг 1: Скачивание

  • Скачать WordPress с wordpress.org
  • Последняя стабильная версия
  • Проверить целостность архива

Шаг 2: Загрузка файлов

  • FTP/SFTP клиент (FileZilla)
  • Панель управления хостингом
  • SSH-доступ (для продвинутых)
  • Загрузить в корневую папку сайта

Шаг 3: Создание БД

  • Через панель хостинга (cPanel, Plesk)
  • phpMyAdmin
  • Записать: имя БД, пользователь, пароль
Системы управления веб-контентом

Структура файлов WordPress

wordpress/
├── wp-admin/          # Админ-панель
│   ├── css/
│   ├── js/
│   └── ...
├── wp-content/        # Контент сайта
│   ├── themes/        # Темы
│   ├── plugins/       # Плагины
│   └── uploads/       # Загрузки
├── wp-includes/       # Ядро системы
└── wp-config.php      # Конфигурация

Важные файлы

  • wp-config.php — настройки БД
  • .htaccess — перенаправления
  • index.php — точка входа
Системы управления веб-контентом

Процесс установки WordPress

Этапы установки

  1. Выбор языка — интерфейс установщика
  2. Ввод данных БД — имя, пользователь, пароль, хост
  3. Запуск установки — создание таблиц
  4. Настройка сайта — название, логин, пароль админа
  5. Готово! — вход в админ-панель

Данные для установки

  • Название сайта — можно изменить позже
  • Email администратора — для восстановления
  • Логин — не использовать "admin"
  • Пароль — сложный, сгенерированный
Системы управления веб-контентом

Безопасность при установке

Рекомендации

  • Сложный пароль админа — минимум 12 символов
  • Уникальный логин — не "admin", не "administrator"
  • Префикс таблиц — не wp_, а случайный
  • SSL-сертификат — HTTPS обязателен
  • Права файлов — 644 для файлов, 755 для папок
  • wp-config.php — на уровень выше public_html

После установки

  • Удалить файлы установки
  • Установить плагин безопасности
  • Настроить резервное копирование
Системы управления веб-контентом

Обзор административной панели

Основные разделы

  • Консоль — сводка, новости, быстрые действия
  • Записи — блог-контент
  • Медиафайлы — библиотека файлов
  • Страницы — статический контент
  • Комментарии — модерация
  • Внешний вид — темы, виджеты, меню
  • Плагины — расширения
  • Пользователи — управление аккаунтами
  • Инструменты — импорт, экспорт
  • Настройки — конфигурация сайта
Системы управления веб-контентом

Консоль WordPress

Виджеты консоли

  • В состоянии — статистика контента
  • Быстрые действия — создание записей
  • Новости WordPress — обновления
  • Настроить — персонализация
  • Site Health — проверка системы

Экранные настройки

  • Скрыть/показать виджеты
  • Расположение блоков
  • Ширина колонок
  • Сохранение персональных настроек
Системы управления веб-контентом

Настройки WordPress

Общие настройки

  • Название сайта — заголовок
  • Описание — слоган
  • URL сайта — адрес
  • Email администратора — контакты
  • Регистрация — разрешить/запретить
  • Часовой пояс — для расписания
  • Формат даты/времени — локализация
Системы управления веб-контентом

Настройки записи

Настройки чтения

  • Главная страница — записи или статическая
  • Количество записей — на странице блога
  • RSS-лента — формат и количество
  • Видимость — для поисковиков

Настройки обсуждения

  • Комментарии — включить/выключить
  • Модерация — ручное одобрение
  • Спам — фильтрация, blacklist
  • Уведомления — email о комментариях
  • Автозакрытие — старых записей
Системы управления веб-контентом

Постоянные ссылки (ЧПУ)

Варианты структуры

  • Простой — ?p=123 (не рекомендуется)
  • День и название — /2025/03/02/sample-post/
  • Месяц и название — /2025/03/sample-post/
  • Название записи — /sample-post/
  • Произвольный — кастомная структура

SEO-оптимизация

  • Короткие, понятные URL
  • Ключевые слова в адресе
  • Только латиница и дефисы
  • Структура категорий (опционально)
Системы управления веб-контентом

Настройка ЧПУ

Требования

  • Mod_rewrite — модуль Apache
  • .htaccess — файл перенаправления
  • Nginx — другая конфигурация

Пример .htaccess

# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Системы управления веб-контентом

Настройки медиафайлов

Размеры изображений

  • Миниатюра — 150x150 px
  • Средний — 300x300 px
  • Большой — 1920x1920 px (Full HD)
  • Оригинал — без изменений
  • WebP/AVIF — автоматическая конвертация

Загрузка файлов

  • Папка — wp-content/uploads/
  • По месяцам — организация по датам

Форматы

  • WebP — современный формат (рекомендуется)
  • AVIF — новейший формат с лучшим сжатием
  • jpg, png, gif — классические форматы
  • pdf, mp4, webm — документы и видео
  • Ограничения — зависит от хостинга
Системы управления веб-контентом

Пользователи и права доступа

Роли в WordPress

  • Администратор — полный доступ
  • Редактор — управление контентом
  • Автор — публикация своих записей
  • Участник — только черновики
  • Подписчик — чтение и комментарии

Возможности

  • Многосайтовый режим — Super Admin
  • Кастомные роли — через плагины
  • Capability — детальные права
Системы управления веб-контентом

Первоначальные действия

После установки

  1. Удалить демо-контент
  2. Настроить постоянные ссылки
  3. Установить тему
  4. Добавить базовые плагины
  5. Создать страницы (Главная, О нас, Контакты)
  6. Настроить меню навигации
  7. Установить favicon и логотип
  8. Проверить Site Health

Обязательные плагины

  • SEO-оптимизация (Yoast, Rank Math)
  • Безопасность (Wordfence, iThemes)
  • Кеширование (WP Super Cache, W3 Total Cache)
  • Формы (Contact Form 7, WPForms)
Системы управления веб-контентом

Проверка работоспособности

Site Health

  • Статус — критические проблемы
  • Рекомендации — улучшения
  • Информация — детальные данные
  • Инструменты — проверки и тесты

Что проверить

  • PHP-версия
  • Расширения PHP (mbstring, xml, json)
  • Права на файлы
  • Подключение по HTTPS
  • Cron-задачи
  • REST API
Системы управления веб-контентом

Автоматическая установка

Через хостинг-панель

  • Softaculous — популярный установщик
  • cPanel — WordPress Manager
  • Plesk — WordPress Toolkit
  • ISPManager — скрипты CMS

Преимущества автоустановки

  • Быстрота — 1-2 минуты
  • Автоматические обновления
  • Резервное копирование
  • Безопасность настроек
Системы управления веб-контентом

Установка через Docker

# docker-compose.yml
version: '3.8'

services:
  # База данных MariaDB
  db:
    image: mariadb:10.11
    container_name: wordpress_db
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: root_password
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wp_user
      MYSQL_PASSWORD: wp_password
    volumes:
      - db_data:/var/lib/mysql
    networks:
      - wp_network
    healthcheck:
      test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
      interval: 10s
      timeout: 5s
      retries: 5

  # WordPress
  wordpress:
    image: wordpress:6.4-php8.2-apache
    container_name: wordpress
    restart: always
    depends_on:
      db:
        condition: service_healthy
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_DB_USER: wp_user
      WORDPRESS_DB_PASSWORD: wp_password
    volumes:
      - wordpress_data:/var/www/html
    ports:
      - "8080:80"
    networks:
      - wp_network

  # Adminer для администрирования БД
  adminer:
    image: adminer:4.8.1
    container_name: adminer
    restart: always
    depends_on:
      - db
    ports:
      - "8081:8080"
    networks:
      - wp_network

networks:
  wp_network:
    driver: bridge

volumes:
  db_data:
  wordpress_data:
Системы управления веб-контентом

Компоненты Docker-решения

WordPress

  • Образ: wordpress:6.4-php8.2-apache
  • Порт: 8080 → 80
  • Volumes: wordpress_data
  • Depends on: db (healthcheck)

MariaDB

  • Образ: mariadb:10.11
  • Совместимость с MySQL
  • Healthcheck: проверка готовности
  • Volumes: db_data

Adminer

  • Образ: adminer:4.8.1
  • Порт: 8081 → 8080
  • Веб-интерфейс для БД
  • Подключение к db
Системы управления веб-контентом

Запуск Docker-контейнеров

Команды управления

# Запуск контейнеров
docker-compose up -d

# Проверка статуса
docker-compose ps

# Просмотр логов
docker-compose logs -f

# Остановка
docker-compose stop

# Полное удаление
docker-compose down -v

Доступ к сервисам

Системы управления веб-контентом

Локальная разработка

Инструменты

  • Local (LocalWP) — специализированный для WordPress
  • XAMPP — кроссплатформенный (Apache + PHP 8.2+)
  • MAMP — для macOS
  • Docker — контейнеризация
  • Laravel Sail — для продвинутых
  • Vagrant — виртуальные машины

Преимущества

  • Быстрая итерация
  • Безопасное тестирование
  • Офлайн-работа
  • Версионирование
Системы управления веб-контентом

Типичные проблемы установки

Ошибка соединения с БД

  • Неверные учётные данные
  • БД не создана
  • Хост БД неверный
  • Превышен лимит подключений

Белый экран

  • Нехватка памяти PHP
  • Ошибка в wp-config.php
  • Конфликт плагинов
  • Проблема с темой

500 Internal Server Error

  • Неверный .htaccess
  • Права на файлы
  • Версия PHP
Системы управления веб-контентом

Обновление WordPress

Типы обновлений

  • Основные — новые функции (6.4, 6.5...)
  • Второстепенные — безопасность (6.4.1, 6.4.2)
  • Автоматические — безопасность включены по умолчанию

Процесс обновления

  1. Резервная копия (БД + файлы)
  2. Деактивировать плагины
  3. Обновить WordPress
  4. Обновить плагины и темы
  5. Проверить работоспособность
  6. Активировать плагины
Системы управления веб-контентом

Резервное копирование

Что копировать

  • Файлы — wp-content, wp-config.php
  • База данных — дамп SQL
  • Плагины — список установленных
  • Настройки — экспорт настроек

Методы

  • Плагины — UpdraftPlus, BackWPup
  • Ручной — FTP + phpMyAdmin
  • Хостинг — автоматические бэкапы
  • SSH — для VPS/выделенных серверов

Резервное копирование в Docker

# Создание бэкапа БД
docker-compose exec -T db mysqldump -u wp_user -pwp_password wordpress > backup.sql

# Восстановление БД
docker-compose exec -T db mysql -u wp_user -pwp_password wordpress < backup.sql

# Бэкап файлов WordPress
docker cp wordpress:/var/www/html ./wordpress-backup
Системы управления веб-контентом

Резюме лекции

Ключевые требования

  • PHP 8.1+, MySQL 8.0+
  • SSL-сертификат
  • Правильные права файлов
  • Уникальный префикс таблиц

Процесс установки

  • Загрузка файлов
  • Создание БД
  • Запуск установщика
  • Настройка сайта

Первоначальные настройки

  • ЧПУ — Название записи
  • Удалить демо-контент
  • Установить базовые плагины
  • Создать структуру страниц

Безопасность

  • Сложный пароль админа
  • Уникальный логин
  • SSL-сертификат
  • Резервное копирование
Системы управления веб-контентом

Вопросы для обсуждения

Для самопроверки

  1. Какие минимальные требования к серверу для WordPress?
  2. Какой формат ЧПУ рекомендуется для SEO?
  3. Что содержит файл wp-config.php?
  4. Какие плагины обязательны после установки?
  5. Как проверить работоспособность сайта?
  6. Как создать резервную копию WordPress?